home *** CD-ROM | disk | FTP | other *** search
- 10 ' nippathi.bas
- 20 '--------------------------------------------------------------------
- 30 '
- 40 '
- 50 ' に っ ぱ ち Ver 2.03 b
- 60 '
- 70 '
- 80 '
- 90 ' Programed by Hoshitora.
- 100 '
- 110 '
- 120 '--------------------------------------------------------------------
- 130 *SETUP0
- 140 STOP OFF
- 150 QPL$=STR$(INP(&H5EC) MOD 2)
- 160 VER$="2.03 b"
- 170 SCREEN@0 : PLAY OFF
- 180 ON ERROR GOTO 10660
- 190 CLEAR ,,1024/4,1024*300
- 200 QPL$=STR$(INP(&H5EC) MOD 2)
- 210 VER$="2.03 b" : DEFINT A-Z
- 220 ON ERROR GOTO 10660
- 230 SHELL"CD DATFILES"
- 240 SCREEN@2 : LOAD@ "INIT2.TIF",(700,0)
- 250 SHELL "CD ..\MUSFILES" :LOAD@ "NIPPATHI.PMB":LOAD@ "TORA03.FMB"
- 260 DIM A%(40000):LOAD@"radetzky.EUP",A%,1
- 270 STOP OFF:ON ERROR GOTO 10660
- 280 '--------------------------------------------------------------------
- 290 CHKPLAY=0
- 300 '--------------------------------------------------------------------
- 310 SHELL "CD .." : OPEN "I",#1,"NIPPATHI.CFG"
- 320 DIM USER(4),SET$(4),USERDATCK(5)
- 330 FOR X=0 TO 4 : INPUT#1,SET$(X)
- 340 USER(X)=VAL(KMID$(SET$(X),17,255)) : NEXT
- 350 '-------------------------
- 360 ON (0=<USER(0))*(USER(0)<=3) GOTO 380
- 370 USERDATCK(0)=1
- 380 ON (((USER(1)=0)+(USER(1)=3)+(USER(1)=5))*-1) GOTO 400
- 390 USERDATCK(1)=1
- 400 ON ((USER(2) MOD 21=0)*-1) GOTO 420
- 410 USERDATCK(2)=1
- 420 ON (1=<USER(3))*(USER(3)<=2) GOTO 440
- 430 USERDATCK(3)=1
- 440 ON (USER(4)>=0)*-1 GOTO 470
- 450 USERDATCK(4)=1
- 460 '-------------------------
- 470 FOR X=0 TO 4 : USERDATCK(5)=USERDATCK(5)+USERDATCK(X) : NEXT
- 480 USER(0)=USER(0)*(USERDATCK(0)=0)*-1 + (USERDATCK(0)=1)*-2
- 490 USER(1)=USER(1)*(USERDATCK(1)=0)*-1 + (USERDATCK(1)=1)*-3
- 500 USER(2)=USER(2)*(USERDATCK(2)=0)*-1 + (USERDATCK(2)=1)*-63
- 510 USER(3)=USER(3)*(USERDATCK(3)=0)*-1 + (USERDATCK(3)=1)*-2
- 520 USER(4)=USER(4)*(USERDATCK(4)=0)*-1 + (USERDATCK(4)=1)*-22
- 530 ON (USERDATCK(5)=0)*-1 GOTO 550
- 540 ERROR 99
- 550 USER(1)=USER(1)*-1
- 560 GOSUB *SETWAIT
- 570 '-----------------------------------------------------------------
- 580 SHELL "CD DATFILES"
- 590 DIM TITLE0(19200),TITLE1(2242),TITLE2(2562)
- 600 DIM TITLE3(1482),TITLE5(842)
- 610 LOAD@ "TITLE0.DAT",TITLE0: LOAD@ "TITLE1.DAT",TITLE1
- 620 LOAD@ "TITLE2.DAT",TITLE2: LOAD@ "TITLE3.DAT",TITLE3
- 630 LOAD@ "TITLE5.DAT",TITLE5
- 640 FOR X=1 TO 9:PUT@A (0,59*(X-1))-(639,59*X),TITLE0%:NEXT
- 650 S!=2:GOSUB *WAIT
- 660 PUT@ (0,50)-(639,105),TITLE1,PSET,%51
- 670 PUT@ (0,115)-(639,178),TITLE2,PSET,%53
- 680 PUT@ (0,440)-(639,460),TITLE5,PSET,%54
- 690 ON FDV GOTO *SETUP1
- 700 PUT@ (0,300)-(639,336),TITLE3,PSET,%55
- 710 '--------------------------------------------------------------------
- 720 VIEW (0,0)-(1023,511):WINDOW (0,0)-(1023,511)
- 730 '--------------------------------------------------------------------
- 740 DIM CARD1(363),CARD2(363),CARD3(363),CARD4(363),CARD5(363)
- 750 DIM CARD6(363),CARD7(363),CARD8(363),CARD9(363),CARD10(363)
- 760 DIM CARD11(363),CARD12(363),CARD13(363),CARD(2775),JOKER(2775)
- 770 DIM C1(143),C2(143),C3(143),C4(143),KYAN(87),NAGARE(571),MUKOU(214)
- 780 DIM PN1(71),PN2(71),PN3(71),PN4(71),PN5(71),JOKER2(2775)
- 790 DIM PN6(71),PN7(71),PN8(71),PN9(71),PN0(71)
- 800 DIM CN1(31),CN2(31),CN3(31),CN4(31),CN5(31)
- 810 DIM CN6(31),CN7(31),CN8(31),CN9(31),CN0(31),TEMPTIF2(5700)
- 820 DIM MAS1(87),MAS2(87),MAS3(87),MAS4(80),MAS5(113)
- 830 DIM MAS6(65),MAS7(140),MAS8(320),MAS9(360),MAS10(120)
- 840 DIM MAS11(190),MAS12(85),MAS13(85),IPPATHU(1300),NAGA(4,3)
- 850 DIM RECHI(760),NOKORI(71),PTS&(4),C(1),KATHI(990),AGARI(700)
- 860 DIM ATARI(830),ATARIARI(1200),DUBLE(720),TRIPLE(1020),GAESHI(570)
- 870 DIM FURIKOMI(960),TUBURE(760),PON(550),KAN(530),TEMPTIF(22000)
- 880 DIM SET01(470),SET02(400),SET03(93),SET04(110),SET05(185),SET06(95)
- 890 DIM SET07(170),SET08(175),SET09(395),SET10(390),SET11(420),SET12(370)
- 900 DIM SET13(190),SET14(450),SET15(90),SET16(380),SET17(400),SET18(152)
- 910 '-----------------------------------------------------------------
- 920 DIM CHECK(1),PTSTEMP&(1),FUDA(4),DBFRG(1),ATFRG(1),ATCK(1)
- 930 DIM PONFRG(1),DAT(1),TUBFRG(1),MKFRG(1),POCK(1)
- 940 DIM DAI(1),M(1),T(1),AT(1),PO(1),HIKI(1),PCK(1)
- 950 '--------------------------------------------------------------------
- 960 LINE (640,0)-(1023,480),PSET,%1,BF : LOAD@ "NIP_1.DAT",TEMPTIF
- 970 PUT@A (640,0)-(700,272),TEMPTIF
- 980 GET@A (640,0)-(700,90),CARD :GET@A (640,91)-(700,181),JOKER
- 990 GET@A (640,182)-(700,272),JOKER2
- 1000 '--------------------------------------------------------------
- 1010 LINE (640,0)-(1023,480),PSET,%1,BF : LOAD@ "NIP_2.DAT",TEMPTIF
- 1020 PUT@ (640,0)-(1000,460),TEMPTIF,PSET,%9
- 1030 GET@ (640,0)-(724,15),MAS1,%9 :GET@ (640,16)-(724,31),MAS2,%9
- 1040 GET@ (640,32)-(724,47),MAS3,%9 :GET@ (640,48)-(719,63),MAS4,%9
- 1050 GET@ (640,64)-(703,79),MAS6,%9 :GET@ (640,80)-(739,97),MAS7,%9
- 1060 GET@ (640,98)-(704,115),MAS12,%9 :GET@ (640,116)-(704,133),MAS13,%9
- 1070 GET@ (640,134)-(663,181),PN0,%9 :GET@ (640,182)-(663,229),PN1,%9
- 1080 GET@ (640,230)-(663,277),PN2,%9 :GET@ (640,278)-(663,325),PN3,%9
- 1090 GET@ (640,326)-(663,373),PN4,%9 :GET@ (640,374)-(663,421),PN5,%9
- 1100 GET@ (740,0)-(763,47),PN6,%9 :GET@ (740,48)-(763,95),PN7,%9
- 1110 GET@ (740,96)-(763,143),PN8,%9 :GET@ (740,144)-(763,191),PN9,%9
- 1120 GET@ (740,192)-(755,223),CN0,%9 :GET@ (740,224)-(755,255),CN1,%9
- 1130 GET@ (740,256)-(755,287),CN2,%9 :GET@ (740,288)-(755,319),CN3,%9
- 1140 GET@ (740,320)-(755,351),CN4,%9 :GET@ (740,352)-(755,383),CN5,%9
- 1150 GET@ (740,384)-(755,415),CN6,%9 :GET@ (840,0)-(855,31),CN7,%9
- 1160 GET@ (840,32)-(855,63),CN8,%9 :GET@ (840,64)-(855,95),CN9,%9
- 1170 GET@ (840,96)-(900,186),CARD1,%9 :GET@ (840,187)-(900,277),CARD2,%9
- 1180 GET@ (840,278)-(900,368),CARD3,%9 :GET@ (840,369)-(900,459),CARD4,%9
- 1190 GET@ (940,0)-(1000,90),CARD5,%9 :GET@ (940,91)-(1000,181),CARD6,%9
- 1200 GET@ (940,182)-(1000,272),CARD7,%9:GET@ (940,273)-(1000,363),CARD8,%9
- 1210 GET@ (940,364)-(1000,454),CARD9,%9
- 1220 '--------------------------------------------------------------
- 1230 LINE (640,0)-(1023,480),PSET,%1,BF : LOAD@ "NIP_3.DAT",TEMPTIF
- 1240 PUT@ (640,0)-(940,442),TEMPTIF,PSET,%9
- 1250 GET@ (640,0)-(700,90),CARD10,%9 :GET@ (640,91)-(700,181),CARD11,%9
- 1260 GET@ (640,182)-(700,272),CARD12,%9:GET@ (640,273)-(700,363),CARD13,%9
- 1270 GET@ (640,364)-(709,395),C1,%9 :GET@ (640,396)-(709,427),C2,%9
- 1280 GET@ (740,0)-(935,36),SET01,%9 :GET@ (740,37)-(904,74),SET02,%9
- 1290 GET@ (740,75)-(840,100),SET08,%9 :GET@ (740,101)-(920,131),SET17,%9
- 1300 GET@ (740,132)-(851,147),MAS5,%9 :GET@ (740,148)-(853,163),MAS10,%9
- 1310 GET@ (740,164)-(885,183),MAS11,%9 :GET@ (740,184)-(913,246),AGARI,%9
- 1320 GET@ (740,247)-(913,316),ATARI,%9 :GET@ (740,317)-(920,377),DUBLE,%9
- 1330 GET@ (740,378)-(871,442),GAESHI,%9
- 1340 '--------------------------------------------------------------
- 1350 LINE (640,0)-(1023,480),PSET,%1,BF : LOAD@ "NIP_4.DAT",TEMPTIF
- 1360 PUT@ (640,0)-(995,450),TEMPTIF ,PSET,%9
- 1370 GET@ (640,0)-(709,31),C3,%9 :GET@ (640,32)-(709,63),C4,%9
- 1380 GET@ (640,64)-(688,89),SET03,%9 :GET@ (640,90)-(693,118),SET04,%9
- 1390 GET@ (640,119)-(693,142),SET05,%9 :GET@ (640,143)-(692,168),SET06,%9
- 1400 GET@ (640,169)-(737,193),SET07,%9 :GET@ (640,194)-(710,229),SET13,%9
- 1410 GET@ (640,230)-(714,272),MUKOU,%9 :GET@ (640,273)-(687,298),SET15,%9
- 1420 GET@ (640,299)-(736,325),SET16,%9 :GET@ (640,326)-(735,350),SET18,%9
- 1430 GET@ (640,351)-(687,374),NOKORI,%9:GET@ (640,375)-(722,390),KYAN,%9
- 1440 GET@ (740,0)-(909,36),SET14,%9 :GET@ (740,43)-(863,103),KAN,%9
- 1450 GET@ (740,104)-(912,155),NAGARE,%9:GET@ (740,156)-(861,219),PON,%9
- 1460 GET@ (740,220)-(927,281),RECHI,%9 :GET@ (740,282)-(928,343),TUBURE,%9
- 1470 GET@ (740,344)-(991,363),MAS8,%9 :GET@ (640,391)-(980,450),IPPATHU,%9
- 1480 '--------------------------------------------------------------
- 1490 LINE (640,0)-(1023,480),PSET,%1,BF : LOAD@ "NIP_5.DAT",TEMPTIF
- 1500 PUT@ (640,0)-(940,376),TEMPTIF,PSET,%9
- 1510 GET@ (640,0)-(892,21),MAS9,%9 :GET@ (640,22)-(872,47),SET09,%9
- 1520 GET@ (640,48)-(872,73),SET10,%9 :GET@ (640,74)-(897,98),SET11,%9
- 1530 GET@ (640,99)-(848,125),SET12,%9:GET@ (640,126)-(937,186),ATARIARI,%9
- 1540 GET@ (640,187)-(883,248),FURIKOMI,%9
- 1550 GET@ (640,249)-(874,313),KATHI,%9
- 1560 GET@ (640,314)-(890,376),TRIPLE,%9
- 1570 '--------------------------------------------------------------------
- 1580 SHELL "CD .."
- 1590 '--------------------------------------------------------------------
- 1600 PUT@A (0,290)-(639,349),TITLE0,PSET
- 1610 '--------------------------------------------------------------------
- 1620 DEF FNA(W)=(W-1)*110+(W=4)*(-30)
- 1630 DEF FNB&(W&)=INT(LOG(ABS(W&)-(W&=0))/LOG(10)+1)
- 1640 DEF FNC&(W&)=((W&+5)\10)*10
- 1650 DEF FND(W,V)=(W-1)* (((V<6)*-62)+((V>5)*(INT(-320/V))))
- 1660 DEF FNE(W,V)=((W-250)\(((V<6)*-62)+((V>5)*INT(-320/V))))+1
- 1670 DEF FNF(W)=(509<W)*(W<620)
- 1680 DEF FNG(W)=(345<W)*(W<360)
- 1690 DEF FNH(W)=(351<W)*(W<435)+(446<W)*(W<530)*2+(541<W)*(W<620)*3
- 1700 DEF FNI(W)=(380<W)*(W<430)+(440<W)*(W<490)*2+ (500<W)*(W<550)*3+(560<W)*(W<610)*4
- 1710 DEF FNJ(W)=(446<W)*(W<530)+(541<W)*(W<620)*2
- 1720 DEF FNL(A)=(75<A)*(A<135)+(165<A)*(A<275)*5+(330<A)*(A<600)*21
- 1730 DEF FNM(A)=(255<A)*(A<290)+(295<A)*(A<330)*2+(335<A)*(A<370)*3+(375<A)*(A<410)*4
- 1740 DEF FNN(A,B)=(140<B)*(B<180)*(495<A)*(A<605)
- 1750 DEF FNO(A,B)=(425<B)*(B<460)*((368<A)*(A<425)+(448<A)*(A<505)*2)
- 1760 '--------------------------------------------------------------------
- 1770 *SETUP1
- 1780 ON (PAD(1)=0)*(PTRIG(1)=<3) GOTO 1800
- 1790 GOTO 1780
- 1800 MOUSE 0:MOUSE 4,0,0,639,479 : KPL=1
- 1810 MOUSE 2,CHR$(251,255,241,255,224,255,192,127,128,63,0,31,224,255,224,255,224,255,224,255,224,255,224,255,224,255,224,255,224,255,224,255),CHR$(0,0,4,0,14,0,31,0,63,128,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,0,0),5,0
- 1820 MOUSE 1,320,252,1:DEF PEN 0,1
- 1830 ON ERROR GOTO 10660
- 1840 ON MOUSE(3) GOSUB *STFRG2:ON MOUSE(1) GOSUB *STFRG1
- 1850 PUT@A (0,290)-(639,349),TITLE0
- 1860 LINE (220,225)-(425,270),PSET,%56,BF
- 1870 PUT@ (226,231)-(421,267),SET01,PSET,%71
- 1880 LINE (220,305)-(425,350),PSET,%56,BF
- 1890 PUT@ (241,310)-(405,347),SET02,PSET,%71
- 1900 LINE (220,385)-(425,430),PSET,%56,BF
- 1910 PUT@ (235,393)-(415,423),SET17,PSET,%71
- 1920 LINE (220,225)-(425,270),PSET,%64,B
- 1930 MOUSE(3) ON:MOUSE(1) ON:ON ERROR GOTO 10660
- 1940 ON (FRG=0)*-1 GOTO 1940
- 1950 MOUSE(3) OFF:MOUSE(1) OFF:ON FRG GOTO 2130,*USERSET,*EN
- 1960 *STFRG1
- 1970 FS0=MOUSE(0):FS1=MOUSE(1)
- 1980 FRP=(220<FS0)*(FS0<425)*((225<FS1)*(FS1<270)+2*(305<FS1)*(FS1<350)+3*(385<FS1)*(FS1<430))
- 1990 LINE (220,225)-(425,270),PSET,%82,B
- 2000 LINE (220,305)-(425,350),PSET,%82,B
- 2010 LINE (220,385)-(425,430),PSET,%82,B
- 2020 ON (FRP=0)*-1 GOTO 2040
- 2030 LINE (220,225+(FRP-1)*80)-(425,270+(FRP-1)*80),PSET,%64,B
- 2040 RETURN
- 2050 *STFRG2
- 2060 FR0=MOUSE(4,0):FR1=MOUSE(5,0)
- 2070 FRG=(220<FR0)*(FR0<425)*((225<FR1)*(FR1<270)+2*(305<FR1)*(FR1<350)+3*(385<FS1)*(FS1<430))
- 2080 FR0=MOUSE(7,0):FR1=MOUSE(8,0)
- 2090 FRF=(220<FR0)*(FR0<425)*((225<FR1)*(FR1<270)+2*(305<FR1)*(FR1<350)+3*(385<FS1)*(FS1<430))
- 2100 FRG=(FRG=FRF)*-1*FRG
- 2110 RETURN
- 2120 '-----------------------------------------------------------------
- 2130 ON (PAD(1)=0)*(PTRIG(1)=<3) GOTO 2150
- 2140 GOTO 2130
- 2150 MOUSE 0 : KPL=1
- 2160 MOUSE 2,CHR$(224,255,224,255,224,255,224,255,224,255,224,255,224,255,224,255,224,255,224,255,0,31,128,63,192,127,224,255,241,255,251,255),CHR$(0,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,63,128,31,0,14,0,4,0,0,0),5,15
- 2170 ON MOUSE(3) GOSUB *CARDGET:ON MOUSE(4) GOSUB *ENDCK1
- 2180 MOUSE(3) OFF : MOUSE(4) OFF:STOP OFF : AGA=1
- 2190 LINE (0,0)-(640,480),PSET,%40,BF
- 2200 S!=3:GOSUB *WAIT:MOUSE 1,260,380,1:MOUSE(4) ON:S!=3:GOSUB *WAIT
- 2210 ON ERROR GOTO 10660
- 2220 OUT &H5EC,0
- 2230 DEBUG=(PTRIG(1)=3)*-1
- 2240 '--------------------------------------------------------------------
- 2250 *SETUP2
- 2260 GOSUB *SETWAIT
- 2270 MOUSE(4) OFF
- 2280 ERASE CHECK,PTSTEMP&,FUDA,DBFRG,ATFRG,ATCK,PONFRG,DAT,TUBFRG,DAI
- 2290 ERASE MKFRG,M,T,AT,PO,HIKI,POCK
- 2300 '----------------------------------------------------------------
- 2310 DIM CHECK(52+USER(0)),PTSTEMP&(4),FUDA(4),DBFRG(4,0),ATFRG(4)
- 2320 DIM PONFRG(4,15),DAT(5,40,1),TUBFRG(4),DAI(2),MKFRG(4,5),M(4,5),T(4)
- 2330 DIM PO(4),AT(4),HIKI(1),POCK(4),ATCK(4)
- 2340 REST=52+USER(0):Z=AGA:NOKO=0:AGA=0:E=0:IL=0
- 2350 MOUSE(4) ON
- 2360 ON ERROR GOTO 10660
- 2370 RANDOMIZE TIME
- 2380 '----------------------------------------------------------------
- 2390 LINE (238,0)-(640,480),PSET,%40,BF
- 2400 LINE (0,149)-(165,480),PSET,%40,BF
- 2410 LINE (89,111)-(141,147),PSET,%40,BF
- 2420 PUT@ (170,27)-(239,58),C1,PSET,%63
- 2430 PUT@ (170,137)-(239,168),C2,PSET,%63
- 2440 PUT@ (170,247)-(239,278),C3,PSET,%63
- 2450 PUT@ (170,387)-(239,418),C4,PSET,%63
- 2460 FOR W=1 TO 4
- 2470 POINT (174,60+FNA(W))
- 2480 LINE STEP(0,0)-STEP(56,16),PSET,%41,BF
- 2490 ON ((FNB&(PTS&(W))>5)*-1)+1 GOTO 2530,2500
- 2500 ON (PTS&(W)>0)*-1 GOTO 2520
- 2510 U$=" - ∞ " :GOTO 2540
- 2520 U$=" + ∞ " :GOTO 2540
- 2530 U$=SPACE$(5-FNB&(PTS&(W)))+STR$(PTS&(W))
- 2540 SYMBOL (178,60+FNA(W)),U$,1,1,%19
- 2550 NEXT
- 2560 X=50:Y=150:GOSUB *PRIN_1
- 2570 PUT@ (40,120)-(87,143),NOKORI,PSET,%19 : S!=1 : GOSUB *WAIT
- 2580 '-----------------------------------------------------------------
- 2590 ON (PTS&(4)=<-1000)*(CHKPLAY=0) GOSUB *ENDCK2
- 2600 '-----------------------------------------------------------------
- 2610 MOUSE(4) OFF : FOR K=1 TO 5:FOR R=Z-1 TO Z+2:P=(R MOD 4)+1
- 2620 RRD=2:GOSUB *CARD:C=0:CTR=1:GOSUB *PRINTING:GOSUB *RESTPRIN:CTR=0
- 2630 OUTM #255,&H9C,60,0:OUTM #255,&HBC,&H0A,&H40:OUTM #255,&HBC,&H07,&H7F
- 2640 OUTM #255,&HCC,&H03 :OUTM #255,&H9C,60,70:S!=.5!:GOSUB *WAIT
- 2650 NEXT: NEXT:RRD=1
- 2660 IL=1:FOR P=1 TO 4 :GOSUB *FRG:NEXT:IL=0
- 2670 GOTO *NAGACK
- 2680 MOUSE(4) ON
- 2690 S!=2:GOSUB *WAIT:GOSUB *START:AI=2
- 2700 S!=2:GOSUB *WAIT:GOTO *HANTEI
- 2710 '-----------------------------------------------------------------
- 2720 AI=1
- 2730 GOSUB *CHOICE
- 2740 ON (G=0)*-1 GOTO *HANTEI
- 2750 Z=(Z MOD 4)-1*(AI=1)
- 2760 GOTO 2720
- 2770 '--------------------------------------------------------------------
- 2780 *PRIN_1
- 2790 ON (RRD<>2)*-1 GOTO 2810
- 2800 XTM=X:YTM=Y:OPL=1:GOSUB 2860:X=XTM:Y=YTM:OPL=0
- 2810 PUT@A (X,Y)-(X+60,Y+90),CARD,PSET:RETURN
- 2820 '--------------------------------------------------------------------
- 2830 *PRIN_4
- 2840 ON (M=0)*-1 GOTO 3090
- 2850 ON CTR+1 GOTO 2870,2860
- 2860 XT=X:X=700:YT=Y:Y=0:LINE (700,0)-(800,100),PSET,%40,BF
- 2870 M=M-4*(C<>0):LINE (X+1,Y+1)-(X+59,Y+89),PSET,%M+30,BF
- 2880 PSET(X+1,Y+1),%40 : PSET(X+1,Y+89),%40
- 2890 PSET(X+59,Y+1),%40 : PSET(X+59,Y+89),%40
- 2900 ON OPL GOTO 3120
- 2910 ON N+1 GOTO 2930,2960,2970,2980,2990,3000,3010,3020,3030,3040,3050,3060,3070,3080,2930
- 2920 GOTO 3090
- 2930 ON M\9 GOTO 2950
- 2940 PUT@A (X,Y)-(X+60,Y+90),JOKER,MATTE,1,1,%40 :GOTO 3090
- 2950 PUT@A (X,Y)-(X+60,Y+90),JOKER2,MATTE,1,1,%40:GOTO 3090
- 2960 PUT@ (X,Y)-(X+60,Y+90),CARD1,PSET,%M+20:GOTO 3090
- 2970 PUT@ (X,Y)-(X+60,Y+90),CARD2,PSET,%M+20:GOTO 3090
- 2980 PUT@ (X,Y)-(X+60,Y+90),CARD3,PSET,%M+20:GOTO 3090
- 2990 PUT@ (X,Y)-(X+60,Y+90),CARD4,PSET,%M+20:GOTO 3090
- 3000 PUT@ (X,Y)-(X+60,Y+90),CARD5,PSET,%M+20:GOTO 3090
- 3010 PUT@ (X,Y)-(X+60,Y+90),CARD6,PSET,%M+20:GOTO 3090
- 3020 PUT@ (X,Y)-(X+60,Y+90),CARD7,PSET,%M+20:GOTO 3090
- 3030 PUT@ (X,Y)-(X+60,Y+90),CARD8,PSET,%M+20:GOTO 3090
- 3040 PUT@ (X,Y)-(X+60,Y+90),CARD9,PSET,%M+20:GOTO 3090
- 3050 PUT@ (X,Y)-(X+60,Y+90),CARD10,PSET,%M+20:GOTO 3090
- 3060 PUT@ (X,Y)-(X+60,Y+90),CARD11,PSET,%M+20:GOTO 3090
- 3070 PUT@ (X,Y)-(X+60,Y+90),CARD12,PSET,%M+20:GOTO 3090
- 3080 PUT@ (X,Y)-(X+60,Y+90),CARD13,PSET,%M+20:GOTO 3090
- 3090 ON CTR+1 GOTO 3120,3100
- 3100 X=XT:Y=YT:GET@A (700,0)-(760,90),TEMPTIF
- 3110 PUT@A (X,Y)-(X+60,Y+90),TEMPTIF,MATTE,1,1,%40
- 3120 RETURN
- 3130 '--------------------------------------------------------------------
- 3140 *PRINTING
- 3150 ON (FUDA(P)=0)*-1 GOTO 3190
- 3160 ON RRD GOTO 3170,3180
- 3170 X=640+FND(K,FUDA(P)):Y=15:GOTO 3190
- 3180 X=250+FND(K,FUDA(P)):Y=15+FNA(P)
- 3190 N=DAT(P,K,1):M=DAT(P,K,0)
- 3200 ON (M=0)*-1 GOTO 3240
- 3210 ON (DEBUG=1)+1 GOTO 3230
- 3220 GOSUB *PRIN_4 : GOTO 3240
- 3230 ON (((P=4)+(TUBFRG(P)=1)+(E<>0)=0)*-1)+1 GOSUB *PRIN_4,*PRIN_1
- 3240 RETURN
- 3250 '--------------------------------------------------------------------
- 3260 *CARD
- 3270 TUBFRG(P)=(REST=0)*-1
- 3280 ON TUBFRG(P) GOTO 3340
- 3290 W=INT(RND(1)*(52+USER(0))) :ON CHECK(W) GOTO 3260
- 3300 DAT(P,K,0)=(W\13+1)*(W<52)*-1-(W>51)*5
- 3310 DAT(P,K,1)=((W MOD 13)+1)*(W<52)*-1-(W>51)*14
- 3320 FUDA(P)=FUDA(P)+1
- 3330 CHECK(W)=1:REST=REST-1
- 3340 RETURN
- 3350 '--------------------------------------------------------------------
- 3360 *START
- 3370 ON PLAY(0)*-1 GOTO 3390
- 3380 PLAY@ A%,1
- 3390 W=INT(RND(-1*RND(1))*(52+USER(0))) :ON (CHECK(W)=1)*-1 GOTO 3390
- 3400 DAI(1)=W\13+1:DAI(2)=((W MOD 13)+1)*(W<52)*(-1)
- 3410 DAI(0)=0:X=50:Y=260:CTR=1:M=DAI(1):N=DAI(2):GOSUB *PRIN_4:CTR=0
- 3420 OUTM #255,&H9C,60,0:OUTM #255,&HBC,&H0A,&H40:OUTM #255,&HBC,&H07,&H7F
- 3430 OUTM #255,&HCC,&H03 :OUTM #255,&H9C,60,90
- 3440 I=DAI(2):ON ((I-2)*(I-8)*(I-11)*(I-0)=0)*-1 GOTO 3470
- 3450 REST=REST-1:CHECK(W)=1 :GOSUB *RESTPRIN:RETURN
- 3460 '-----------------------------------------------------------------
- 3470 REST=REST-1 :GOSUB *RESTPRIN:S!=3:GOSUB *WAIT
- 3480 PUT@ (43,351)-(117,393),MUKOU,PSET,%62:S!=5:GOSUB *WAIT
- 3490 LINE (40,250)-(110,350),PSET,%40,BF
- 3500 REST=REST+1 :GOSUB *RESTPRIN:S!=2:GOSUB *WAIT
- 3510 LINE (43,351)-(117,393),PSET,%40,BF
- 3520 RANDOMIZE TIME : S!=2:GOSUB *WAIT
- 3530 GOTO *START
- 3540 '--------------------------------------------------------------------
- 3550 *FRG
- 3560 ATFRG(P)=0:PTSTEMP&(P)=0
- 3570 FOR W=0 TO 15:PONFRG(P,W)=0:MKFRG(P,W\3)=0 :NEXT
- 3580 ON (FUDA(P)<2)*-1 GOTO 3650
- 3590 FOR V=2 TO FUDA(P)
- 3600 FOR W=2 TO FUDA(P)
- 3610 ON (DAT(P,W-1,1)>DAT(P,W,1))+1 GOTO 3640
- 3620 SWAP DAT(P,W-1,1),DAT(P,W,1)
- 3630 SWAP DAT(P,W-1,0),DAT(P,W,0)
- 3640 NEXT W,V
- 3650 FOR W=1 TO FUDA(P):ATFRG(P)=ATFRG(P)-DAT(P,W,1)*(DAT(P,W,0)<>5)
- 3660 PONFRG(P,DAT(P,W,1))=PONFRG(P,DAT(P,W,1))+1
- 3670 MKFRG(P,DAT(P,W,0))=MKFRG(P,DAT(P,W,0))-(DAT(P,W,0)<>5)
- 3680 NEXT
- 3690 FOR W=1 TO 4:M(P,W)=W:T(W)=MKFRG(P,W) :NEXT
- 3700 FOR U=2 TO 4
- 3710 ON (T(U)>T(U-1))+1 GOTO 3730
- 3720 SWAP M(P,U),M(P,U-1)
- 3730 NEXT
- 3740 PTSTEMP&(P)=ATFRG(P)*(2^PONFRG(P,2))*(4^PONFRG(P,14))
- 3750 LINE (640,15)-(1023,105),PSET,%40,BF
- 3760 ON (FUDA(P)=0)+1 GOTO 3780
- 3770 AGA=Z : RETURN
- 3780 FOR K=1 TO FUDA(P):GOSUB *PRINTING:NEXT
- 3790 ON (TUBFRG(P)<>0)*-1 GOTO 3890
- 3800 ON IL GOTO 3860
- 3810 SNN=0:FOR TY=1 TO 4:SNN=SNN+(ATFRG(TY)<14)*(TUBFRG(TY)=0):NEXT
- 3820 OUTM #255,&HCB,30-(SNN<>0)
- 3830 OUTM #255,&H9C,60,0:OUTM #255,&HBC,&H0A,&H40:OUTM #255,&HBC,&H07,&H7F
- 3840 OUTM #255,&HCC,&H03 :OUTM #255,&H9C,60,80
- 3850 'GOSUB *RESTPRIN
- 3860 GOSUB *RESTPRIN
- 3870 ON (FUDA(P)=-1*(P<>4))*-1 GOSUB *RECHI
- 3880 ON (ATFRG(P)<-14*(P<>4))*-1 GOSUB *ATARIARI
- 3890 GET@A (640,15)-(1023,105),TEMPTIF
- 3900 PUT@A (250,FNA(P)+15)-(633,FNA(P)+105),TEMPTIF
- 3910 S!=(H<>1)*-1:GOSUB *WAIT :RETURN
- 3920 '-----------------------------------------------------------------
- 3930 *ATARIARI
- 3940 PUT@ (660,30)-(957,90),ATARIARI,PSET,%62:OUTM #255,&HCB,31
- 3950 RETURN 3890
- 3960 '-----------------------------------------------------------------
- 3970 *RECHI
- 3980 PUT@ (660,30)-(847,91),RECHI,PSET,%61:OUTM #255,&HCB,31
- 3990 RETURN 3890
- 4000 '--------------------------------------------------------------------
- 4010 *RESTPRIN
- 4020 LINE (695,113)-(730,144),PSET,%40,BF
- 4030 V=REST\10:W=0
- 4040 ON V GOSUB 4130,4140,4150,4160,4170,4180,4190,4200,4210
- 4050 V=REST MOD 10:W=1
- 4060 ON V+1 GOSUB 4120,4130,4140,4150,4160,4170,4180,4190,4200,4210
- 4070 ON (REST<>0)*-1 GOTO 4090
- 4080 LINE (50,150)-(140,244),PSET,%40,BF
- 4090 GET@A (695,113)-(730,144),TEMPTIF
- 4100 PUT@A (95,113)-(130,144),TEMPTIF
- 4110 RETURN
- 4120 PUT@ (695+W*18,113)-(710+W*18,144),CN0,PSET,%60:RETURN
- 4130 PUT@ (695+W*18,113)-(710+W*18,144),CN1,PSET,%60:RETURN
- 4140 PUT@ (695+W*18,113)-(710+W*18,144),CN2,PSET,%60:RETURN
- 4150 PUT@ (695+W*18,113)-(710+W*18,144),CN3,PSET,%60:RETURN
- 4160 PUT@ (695+W*18,113)-(710+W*18,144),CN4,PSET,%60:RETURN
- 4170 PUT@ (695+W*18,113)-(710+W*18,144),CN5,PSET,%60:RETURN
- 4180 PUT@ (695+W*18,113)-(710+W*18,144),CN6,PSET,%60:RETURN
- 4190 PUT@ (695+W*18,113)-(710+W*18,144),CN7,PSET,%60:RETURN
- 4200 PUT@ (695+W*18,113)-(710+W*18,144),CN8,PSET,%60:RETURN
- 4210 PUT@ (695+W*18,113)-(710+W*18,144),CN9,PSET,%60:RETURN
- 4220 '--------------------------------------------------------------------
- 4230 *CHOICE:Z=Z-(Z=0)*4
- 4240 C=0:QS=0 :ON (TUBFRG(Z)<>0)*-1 GOTO 4970
- 4250 ON (HIKI(0)=Z)+1 GOTO 4280
- 4260 ERASE HIKI:DIM HIKI(1):D=1
- 4270 ON (DAI(1)=5)*(FUDA(Z)=1) GOTO *DRAW
- 4280 ON (HIKI(0)<>0)+1 GOTO 4330
- 4290 ON (REST=0)*-1 GOTO 4970
- 4300 ON (HIKI(1)=0)*-1 GOTO 4970
- 4310 FOR U=1 TO HIKI(1):P=Z:K=FUDA(Z)+1:H=1:GOSUB *CARD :NEXT
- 4320 TUBFRG(Z)=0:G=1:GOSUB *FRG:RETURN
- 4330 LINE (241,0)-(244,480),PSET,%40,BF:G=0
- 4340 LINE (241,FNA(Z)+30)-(244,FNA(Z)+90),PSET,%61,BF
- 4350 V=0:F=0:H=0:FOR W=1 TO 4:V=V+TUBFRG(W):NEXT
- 4360 ON (V=3)+1 GOTO 4380
- 4370 NOKO=Z:RETURN
- 4380 S!=-2*(Z<>4):GOSUB *WAIT
- 4390 W=0:V=0:FOR P=1 TO 4:W=W+(ATFRG(P)<14)*(P<>Z) :NEXT
- 4400 ON (FUDA(Z)=1)*-1 GOTO 4550
- 4410 ON (FUDA(Z)=3)+1 GOTO 4440
- 4420 ON (DAT(Z,3,1)=14)+1 GOTO 4440
- 4430 C(0)=3 : GOTO 4850
- 4440 ON (Z=4)*-1 GOTO 4490
- 4450 ON (W<>0)*-1 GOTO 4500
- 4460 ON (B=1)*-1 GOTO 4540
- 4470 ON INT(RND(1)*3+1) GOTO 4510,4520,4530
- 4480 C(0)=(DAT(Z,FUDA(Z),1)=14)*FUDA(Z)*-1:ON (C(0)>0)*-1 GOTO 4780
- 4490 RESTORE 4770:GOTO 4560
- 4500 RESTORE 4710:GOTO 4560
- 4510 RESTORE 4720:GOTO 4560
- 4520 RESTORE 4730:GOTO 4560
- 4530 RESTORE 4740:GOTO 4560
- 4540 RESTORE 4750:GOTO 4560
- 4550 RESTORE 4760:GOTO 4560
- 4560 WHILE V=0:READ W$
- 4570 ON (W$="*")*-1 GOTO 4660
- 4580 ON (W$="**")+1 GOTO 4600
- 4590 C(0)=0 :V=1: GOTO 4700
- 4600 FOR K=1 TO FUDA(Z)
- 4610 ON ((V=0)*(DAI(1)=5)*(VAL(W$)=DAT(Z,K,1))<>0)*-1 GOTO 4630
- 4620 ON ((V=0)*(DAI(1)=DAT(Z,K,0))*(VAL(W$)=DAT(Z,K,1))<>0)+1 GOTO 4640
- 4630 C(0)=K:V=1
- 4640 NEXT
- 4650 GOTO 4700
- 4660 FOR W=1 TO 4:FOR K=1 TO FUDA(Z)
- 4670 ON ((M(Z,W)=DAT(Z,K,0))*(DAI(2)=DAT(Z,K,1))*(FUDA(Z)<>1)<>0)+1 GOTO 4690
- 4680 C(0)=K:V=1
- 4690 NEXT K,W
- 4700 WEND:B=0
- 4710 DATA 2,8,*,1,3,4,11,5,6,7,9,10,12,13,**,**
- 4720 DATA 13,12,10,9,2,7,6,5,4,3,8,1,*,**,**
- 4730 DATA *,13,12,10,9,8,7,6,5,4,3,2,1,**,**
- 4740 DATA 8,13,12,10,*,9,2,7,6,5,4,3,1,**,**
- 4750 DATA 8,2,*,13,12,10,9,7,6,5,4,3,1,**,**
- 4760 DATA 13,12,10,*,9,7,6,5,4,3,1,**,**
- 4770 DATA 13,12,11,10,9,8,7,6,5,4,3,2,1,*,**,**
- 4780 ON (SGN(C(0))+1)*(Z<>4)*-1 GOTO 4790,4870
- 4790 FOR K=FUDA(Z) TO 1 STEP -1
- 4800 ON ((11=DAT(Z,K,1))*(FUDA(Z)<>1)<>0)*-1 GOTO 4830
- 4810 ON (FUDA(Z)<=2)*(REST<>0) GOTO 4840
- 4820 ON ((5=DAT(Z,K,0))*(FUDA(Z)<>1)<>0)+1 GOTO 4840
- 4830 C(0)=K
- 4840 NEXT
- 4850 ON (Z=4)*-1 GOTO *P4CK1
- 4860 ON SGN(C(0))+1 GOTO *DRAW
- 4870 DAI(0)=Z:DAI(1)=DAT(Z,C(0),0):DAI(2)=DAT(Z,C(0),1)
- 4880 SWAP DAT(Z,C(0),0),DAT(Z,FUDA(Z),0):DAT(Z,FUDA(Z),0)=0
- 4890 SWAP DAT(Z,C(0),1),DAT(Z,FUDA(Z),1):DAT(Z,FUDA(Z),1)=0
- 4900 P=Z:FUDA(Z)=FUDA(Z)-1:GOSUB *FRG
- 4910 X=40+RND(2)*30:Y=245+RND(2)*20:M=DAI(1):N=DAI(2):Q=0
- 4920 ON (N<>11)*-1 GOTO 4940
- 4930 X=50:Y=250
- 4940 CTR=1:GOSUB *PRIN_4:CTR=0
- 4950 ON (FUDA(Z)=0)*-1 GOTO 4960
- 4960 S!=(FUDA(Z)<>0)*(DA<>3)*-2*(B<>1):GOSUB *WAIT
- 4970 RETURN
- 4980 '--------------------------------------------------------------------
- 4990 *DRAW
- 5000 K=FUDA(Z)+1:P=Z:GOSUB *CARD:C=(TUBFRG(Z)=1)*-1
- 5010 GOSUB *FRG
- 5020 ON ((TUBFRG(Z)=1)*(H=0)<>0)*-1 GOSUB *TUBURE
- 5030 F=1:DAI(0)=0: RETURN
- 5040 '--------------------------------------------------------------------
- 5050 *TUBURE
- 5060 PUT@ (270,30+FNA(Z))-(458,91+FNA(Z)),TUBURE,PSET,%60
- 5070 OUTM #255,&H9D,60,0:OUTM #255,&HBD,&H0A,&H40:OUTM #255,&HBD,&H07,&H7F
- 5080 SNN=0:FOR TY=1 TO 4:SNN=SNN+(ATFRG(TY)<14)*(TUBFRG(TY)=0):NEXT
- 5090 OUTM #255,&HCB,30-(SNN<>0)
- 5100 OUTM #255,&HCD,&H02 :OUTM #255,&H9D,40,90
- 5110 P=Z:X=440:GOSUB *PTSPRIN:RETURN
- 5120 '--------------------------------------------------------------------
- 5130 *PTSPRIN
- 5140 FOR W=1 TO FNB&(FNC&(PTSTEMP&(P)))
- 5150 V=VAL(MID$(STR$(FNC&(PTSTEMP&(P))),W+1,1))
- 5160 ON V+1 GOSUB 5190,5200,5210,5220,5230,5240,5250,5260,5270,5280
- 5170 NEXT
- 5180 RETURN
- 5190 PUT@ (X+W*25,FNA(P)+35)-(X+23+W*25,FNA(P)+82),PN0,PSET,%60:RETURN
- 5200 PUT@ (X+W*25,FNA(P)+35)-(X+23+W*25,FNA(P)+82),PN1,PSET,%60:RETURN
- 5210 PUT@ (X+W*25,FNA(P)+35)-(X+23+W*25,FNA(P)+82),PN2,PSET,%60:RETURN
- 5220 PUT@ (X+W*25,FNA(P)+35)-(X+23+W*25,FNA(P)+82),PN3,PSET,%60:RETURN
- 5230 PUT@ (X+W*25,FNA(P)+35)-(X+23+W*25,FNA(P)+82),PN4,PSET,%60:RETURN
- 5240 PUT@ (X+W*25,FNA(P)+35)-(X+23+W*25,FNA(P)+82),PN5,PSET,%60:RETURN
- 5250 PUT@ (X+W*25,FNA(P)+35)-(X+23+W*25,FNA(P)+82),PN6,PSET,%60:RETURN
- 5260 PUT@ (X+W*25,FNA(P)+35)-(X+23+W*25,FNA(P)+82),PN7,PSET,%60:RETURN
- 5270 PUT@ (X+W*25,FNA(P)+35)-(X+23+W*25,FNA(P)+82),PN8,PSET,%60:RETURN
- 5280 PUT@ (X+W*25,FNA(P)+35)-(X+23+W*25,FNA(P)+82),PN9,PSET,%60:RETURN
- 5290 '--------------------------------------------------------------------
- 5300 *HANTEI
- 5310 SNN=0:FOR TY=1 TO 4:SNN=SNN+(ATFRG(TY)<14)*(TUBFRG(TY)=0):NEXT
- 5320 OUTM #255,&HCB,30-(SNN<>0)
- 5330 ON (AGA<>0)*-1 GOTO *AGARI
- 5340 ON (NOKO<>0)*-1 GOTO *KATHINOKORI
- 5350 J=0:L=0
- 5360 FOR W=3 TO 1+(AI=2) STEP -1:P=Z+W:P=((P>4)*(P-4)+(P<5)*P)*-1
- 5370 ON (DAI(1)=5)*(DAT(P,1,0)=5)*(TUBFRG(P)=0)*-1 GOTO 5390
- 5380 ON ((DAI(1)<>5)*(DAI(2)=ATFRG(P))*(TUBFRG(P)=0)*((P<>Z)+(AI=2))<>0)+1 GOTO 5400
- 5390 J=P:L=1
- 5400 TR=0:FOR TY=1 TO PONFRG(P,DAI(2)):TR=TR-(DAT(P,TY,1)=DAI(2)):NEXT
- 5410 TY=((TR<>FUDA(P))*(DAT(P,PONFRG(P,DAI(2))+1,0)=5)-(TR=FUDA(P)))*TR
- 5420 ON ((TY=PONFRG(P,DAI(2)))*(PONFRG(P,DAI(2))>1)*(TUBFRG(P)=0)*((P<>Z)+(AI=2))<>0)+1 GOTO 5440
- 5430 J=P:L=PONFRG(P,DAI(2))
- 5440 NEXT
- 5450 ON AI*(J<>0)*-1 GOTO *ATARI,*IPPATHU
- 5460 FOR P=1 TO 3
- 5470 ON ((DAI(2)<>11)*(PONFRG(P,DAI(2))>=2)*(TUBFRG(P)=0)<>0)+1 GOTO 5490
- 5480 J=P
- 5490 NEXT
- 5500 ON (J<>0)*(F=0) GOTO *PON
- 5510 ON ((PONFRG(4,DAI(2))>=2)*(TUBFRG(4)=0)<>0)+1 GOTO 5530
- 5520 J=4
- 5530 ON (J=4)*(F=0) GOTO *PON
- 5540 ON (((DAI(2)=2)+(DAI(2)=8)+(DAI(1)=5)<>0)*(HIKI(0)=0)*(F=0)<>0)+1 GOTO 5570
- 5550 HIKI(0)=Z:B=1
- 5560 HIKI(1)=D*((DAI(1)=5)*USER(1)*-1*(USER(1)<>0)-(DAI(2)=2)*2-(DAI(2)=8))
- 5570 ON ((DAI(2)=11)*(Q=0)<>0)*-1 GOTO *CHENGE
- 5580 D=1:GOTO 2750
- 5590 '--------------------------------------------------------------------
- 5600 *AGARI
- 5610 P=Z:LINE (250,15+FNA(P))-(640,105+FNA(P)),PSET,%40,BF
- 5620 OUTM #255,&H9D,60,0:OUTM #255,&HCB,30
- 5630 PUT@ (270,30+FNA(Z))-(443,92+FNA(Z)),AGARI,PSET,%64
- 5640 OUTM #255,&HBD,&H0A,&H40:OUTM #255,&HBD,&H07,&H7F
- 5650 OUTM #255,&HCD,&H01:OUTM #255,&H9D,30,127
- 5660 S!=1.8!:GOSUB *WAIT
- 5670 FOR P=1 TO 4
- 5680 ON (P=Z)*-1 GOTO 5760
- 5690 ON (TUBFRG(P)=0)+1 GOTO 5750
- 5700 LINE (640,15)-(1023,105),PSET,%40,BF:E=1
- 5710 FOR K=1 TO FUDA(P):C=1:GOSUB *PRINTING :NEXT
- 5720 GET@A (640,15)-(1023,105),TEMPTIF
- 5730 PUT@A (250,FNA(P)+15)-(633,FNA(P)+105),TEMPTIF
- 5740 X=270:GOSUB *PTSPRIN
- 5750 PTS&(Z)=PTS&(Z)+FNC&(PTSTEMP&(P)*AI):PTS&(P)=PTS&(P)-FNC&(PTSTEMP&(P)*AI)
- 5760 NEXT
- 5770 S!=20:GOSUB *WAIT
- 5780 AGA=Z:GOTO *SETUP2
- 5790 '--------------------------------------------------------------------
- 5800 *ATARI:QS=1
- 5810 ON (DAI(0)=0)*-1 GOTO 5460
- 5820 ON (J=DAI(0))*-1 GOTO 5460
- 5830 ON (J=4)*-1 GOTO *P4CK3
- 5840 P=J:GAE=0:GAE_L=0:UI=0:BR=1:LINE (640,15)-(1023,105),PSET,%40,BF
- 5850 FOR K=1 TO FUDA(P):E=1:C=1:GOSUB *PRINTING :NEXT
- 5860 GET@A (640,15)-(1023,105),TEMPTIF
- 5870 PUT@A (250,FNA(P)+15)-(633,FNA(P)+105),TEMPTIF
- 5880 OUTM #255,&H9D,60,0:OUTM #255,&HBD,&H0A,&H40:OUTM #255,&HBD,&H07,&H7F
- 5890 OUTM #255,&HCB,30 :OUTM #255,&HCD,&H02:OUTM #255,&H9D,64,127
- 5900 ON L GOTO 5910,5920,5930
- 5910 PUT@ (270,30+FNA(P))-(443,89+FNA(P)),ATARI,PSET,%64 :GOTO 5940
- 5920 PUT@ (270,30+FNA(P))-(450,90+FNA(P)),DUBLE,PSET,%65 :GOTO 5940
- 5930 PUT@ (260,30+FNA(P))-(510,92+FNA(P)),TRIPLE,PSET,%65 :UI=1:GOTO 5940
- 5940 P=DAI(0):LINE (640,15)-(1023,105),PSET,%40,BF
- 5950 FOR K=1 TO FUDA(P):E=1:C=1:GOSUB *PRINTING :NEXT
- 5960 GET@A (640,15)-(1023,105),TEMPTIF
- 5970 PUT@A (250,FNA(P)+15)-(633,FNA(P)+105),TEMPTIF
- 5980 '-----------------
- 5990 ON (DAI(1)=5)*(DAT(P,1,0)=5)*(TUBFRG(P)=0)*-1 GOTO 6010
- 6000 ON ((DAI(1)<>5)*(DAI(2)=ATFRG(P))*(TUBFRG(P)=0)<>0)+1 GOTO 6020
- 6010 GAE=1 : GAE_L=1
- 6020 TR=0:FOR TY=1 TO PONFRG(P,DAI(2)):TR=TR-(DAT(P,TY,1)=DAI(2)):NEXT
- 6030 TY=((TR<>FUDA(P))*(DAT(P,PONFRG(P,DAI(2))+1,0)=5)-(TR=FUDA(P)))*TR
- 6040 ON ((TY=PONFRG(P,DAI(2)))*(PONFRG(P,DAI(2))>1)*(TUBFRG(P)=0)<>0)+1 GOTO 6060
- 6050 GAE=1 : GAE_L=PONFRG(P,DAI(2))
- 6060 ON (GAE=1)*-1 GOTO 6090
- 6070 PUT@ (260,30+FNA(P))-(503,91+FNA(P)),FURIKOMI,PSET,%60
- 6080 GOTO 6180
- 6090 S!=4 : GOSUB *WAIT
- 6100 PUT@ (270,30+FNA(P))-(401,94+FNA(P)),GAESHI,PSET,%65
- 6110 SWAP P,J
- 6120 LINE (640,15)-(1023,105),PSET,%40,BF
- 6130 FOR K=1 TO FUDA(P):E=1:C=1:GOSUB *PRINTING :NEXT
- 6140 GET@A (640,15)-(1023,105),TEMPTIF
- 6150 PUT@A (250,FNA(P)+15)-(633,FNA(P)+105),TEMPTIF
- 6160 OUTM #255,&H9D,60,0: OUTM #255,&HCD,&H02:OUTM #255,&H9D,60,127
- 6170 X=270 : PTSTEMP&(P)=PTSTEMP&(P)*(2^L)*(2^GAE_L) : GOTO 6190
- 6180 X=490 : PTSTEMP&(P)=PTSTEMP&(P)*(2^L)
- 6190 GOSUB *PTSPRIN
- 6200 S!=20:GOSUB *WAIT:AGA=J
- 6210 PTS&(P)=PTS&(P)-FNC&(PTSTEMP&(P)):PTS&(J)=PTS&(J)+FNC&(PTSTEMP&(P))
- 6220 GOTO *SETUP2
- 6230 '--------------------------------------------------------------------
- 6240 *SETWAIT
- 6250 SS&=0 : SSS&=0
- 6260 ON (KPL=0)*-1 GOTO 6280
- 6270 MOUSE(4) OFF
- 6280 SS&=0 : SSS&=0
- 6290 INTERVAL 2
- 6300 ON INTERVAL GOSUB *COUNT
- 6310 INTERVAL ON : ON ERROR GOTO 10660
- 6320 WHILE SSS&=0
- 6330 SS&=SS&+1
- 6340 WEND
- 6350 INTERVAL OFF
- 6360 ON (KPL=0)*-1 GOTO 6380
- 6370 MOUSE(4) ON
- 6380 INTERVAL OFF: RETURN
- 6390 *COUNT
- 6400 SSS&=1
- 6410 RETURN
- 6420 '--------------------------------------------------------------------
- 6430 *WAIT
- 6440 SSS&=(S!*SS&/200)*USER(4)
- 6450 WHILE S&<SSS&
- 6460 S&=S&+1
- 6470 WEND:S&=0
- 6480 RETURN
- 6490 '--------------------------------------------------------------------
- 6500 *KATHINOKORI
- 6510 P=Z:LINE (640,15)-(1023,105),PSET,%40,BF
- 6520 FOR K=1 TO FUDA(Z):E=1:C=1:GOSUB *PRINTING :NEXT
- 6530 GET@A (640,15)-(1023,105),TEMPTIF
- 6540 PUT@A (250,FNA(P)+15)-(633,FNA(P)+105),TEMPTIF
- 6550 PUT@ (270,30+FNA(Z))-(504,94+FNA(Z)),KATHI,PSET,%64
- 6560 OUTM #255,&HCB,30
- 6570 GOTO 5670
- 6580 '--------------------------------------------------------------------
- 6590 *PON
- 6600 ON (J=DAI(0))*-1 GOTO 5540
- 6610 ON (PONFRG(J,DAI(2))<2)*-1 GOTO 5540
- 6620 ON (FUDA(J)<1)*-1 GOTO 5540
- 6630 ON (J=4)*-1 GOTO *P4CK2
- 6640 Z=J:P=J:W=1
- 6650 LINE (640,15)-(1023,105),PSET,%40,BF
- 6660 FOR K=1 TO FUDA(Z):GOSUB *PRINTING:NEXT
- 6670 GET@A (640,15)-(1023,105),TEMPTIF
- 6680 PUT@A (250,FNA(P)+15)-(633,FNA(P)+105),TEMPTIF
- 6690 LINE (241,0)-(244,480),PSET,%40,BF:G=0
- 6700 LINE (241,FNA(Z)+30)-(244,FNA(Z)+90),PSET,%61,BF
- 6710 OUTM #255,&H9D,60,0:OUTM #255,&HBD,&H0A,&H40:OUTM #255,&HBD,&H07,&H7F
- 6720 ON PONFRG(Z,DAI(2))-1 GOTO 6730,6750
- 6730 PUT@ (270,30+FNA(Z))-(391,93+FNA(Z)),PON,PSET,%64
- 6740 OUTM #255,&HCD,&H00:OUTM #255,&H9D,60,127 : GOTO 6770
- 6750 PUT@ (270,30+FNA(Z))-(393,90+FNA(Z)),KAN,PSET,%64
- 6760 OUTM #255,&HCD,&H01:OUTM #255,&H9D,58,127
- 6770 S!=4:GOSUB *WAIT
- 6780 DAI(0)=Z
- 6790 FOR K=1 TO FUDA(P)
- 6800 ON (DAT(P,K,1)<>DAI(2))+2 GOTO 6810,6820
- 6810 DAT(5,W,1)=DAT(P,K,1):DAT(5,W,0)=DAT(P,K,0):W=W+1:GOTO 6890
- 6820 DAI(1)=DAT(P,K,0)
- 6830 X=50+RND(2)*15:Y=250+RND(2)*15:M=DAI(1):N=DAI(2)
- 6840 ON (N<>11)*-1 GOTO 6860
- 6850 X=50:Y=250
- 6860 CTR=1:GOSUB *PRIN_4:CTR=0
- 6870 OUTM #255,&H9C,60,0:OUTM #255,&HBC,&H0A,&H40:OUTM #255,&HBC,&H07,&H7F
- 6880 OUTM #255,&HCC,&H03 :OUTM #255,&H9C,60,80:S!=1:GOSUB *WAIT
- 6890 NEXT
- 6900 FUDA(P)=FUDA(P)-PONFRG(P,DAI(2))
- 6910 FOR K=1 TO FUDA(P):DAT(P,K,1)=DAT(5,K,1):DAT(P,K,0)=DAT(5,K,0):NEXT
- 6920 ON ((DAI(2)=2)+(DAI(2)=8)+(DAI(1)=5)=0)*-1 GOTO 6940
- 6930 D=PONFRG(P,DAI(2))+1
- 6940 IL=1:GOSUB *FRG:S!=2:GOSUB *WAIT:AI=1:IL=0
- 6950 GOTO *HANTEI
- 6960 '--------------------------------------------------------------------
- 6970 *CHENGE
- 6980 ON (AI=2)*-1 GOTO 2750
- 6990 Q=1:ON (Z=4)*-1 GOTO *P4CK4
- 7000 S!=1:GOSUB *WAIT
- 7010 W=((INT(RND(1)*4)+1)*(FUDA(Z)=1)+DAT(Z,INT(RND(1)*FUDA(Z))+1,0)*(FUDA(Z)<>1))*-1
- 7020 ON (1=<W)*(W<=4) GOTO 7040
- 7030 GOTO 7010
- 7040 DAI(1)=W
- 7050 LINE (50+4,250+4)-(50+60-4,250+90-4),PSET,%DAI(1)+90,BF
- 7060 S!=2:GOSUB *WAIT:GOTO 2750
- 7070 '--------------------------------------------------------------------
- 7080 *P4CK1
- 7090 LDH=0
- 7100 ON (FUDA(4)=2)*(REST<>0)*(DAT(4,2,0)=5)+1 GOTO 7120
- 7110 LDH=1
- 7120 ON (SGN(C(0))<>0)*-1 GOTO 7140
- 7130 C(0)=((DAT(4,1,1)=DAI(2))+(DAT(4,1,0)=DAI(1))<>0)*(DAT(4,1,1)<>2)*(DAT(4,1,1)<>11)*(DAT(4,1,0)<>5)*(DAT(4,1,1)<>8)
- 7140 ON (SGN(C(0))<>0)*-1 GOTO 7160
- 7150 S!=1-(REST<>0)*1:GOSUB *WAIT:GOTO *DRAW
- 7160 DA=1
- 7170 C(0)=0:CA=0:CC=0:EA=1:CL=1
- 7180 ON (REST=0)+2 GOTO 7190,7210
- 7190 LINE (509,345)-(620,360),PSET,%41,BF
- 7200 PUT@ (533,345)-(596,360),MAS6,PSET,%19:GOTO 7230
- 7210 LINE (509,345)-(620,360),PSET,%41,BF
- 7220 PUT@ (509,345)-(620,360),MAS5,PSET,%19
- 7230 MOUSE(3) ON
- 7240 ON ERROR GOTO 10660
- 7250 ON (CA=-1)*-1 GOTO 7350
- 7260 CAT=CA
- 7270 CK=(DAI(1)<>DAT(4,CAT,0))*(DAI(2)<>DAT(4,CAT,1))*(DAT(4,CAT,1)<>11)*(DAT(4,CAT,0)<>5)*(DAI(1)<>5)
- 7280 ON (FUDA(4)=1)+1 GOTO 7300
- 7290 CL=((DAT(4,CAT,1)<>2)*(DAT(4,CAT,1)<>8)*(DAT(4,CAT,0)<>5)*(DAT(4,CAT,1)<>11)<>0)*-1
- 7300 ON (CK<>0)*-1 GOTO 7230
- 7310 ON (CL=0)*-1 GOTO 7230
- 7320 ON (CAT=0)*-1 GOTO 7230
- 7330 ON (LDH=1)*(DAT(4,CA,0)=5) GOTO 7230
- 7340 C(0)=CA
- 7350 DA=0 : MOUSE(3) OFF
- 7360 LINE (509,345)-(620,360),PSET,%40,BF
- 7370 GOTO 4860
- 7380 '--------------------------------------------------------------------
- 7390 *CARDGET:STOP OFF
- 7400 ON (FUDA(4)=0)*-1 GOTO 7460
- 7410 CA=FNE(MOUSE(4,0),FUDA(4))*(MOUSE(4,0)<FND(FUDA(4),FUDA(4))+310)*-1
- 7420 CB=FNE(MOUSE(7,0),FUDA(4))*(MOUSE(7,0)<FND(FUDA(4),FUDA(4))+310)*-1
- 7430 CA=(CA*(CA<=FUDA(4))+FUDA(4)*(FUDA(4)<CA))*(MOUSE(5,0)>=FNA(4)+15)
- 7440 CB=(CB*(CB<=FUDA(4))+FUDA(4)*(FUDA(4)<CB))*(MOUSE(8,0)>=FNA(4)+15)
- 7450 CA=(CA=CB)*CA*-1
- 7460 ON EA GOTO 7480,7560,7480,7610,7660
- 7470 '----------------------------------------------------------------
- 7480 CC=FNF(MOUSE(4,0))*FNG(MOUSE(5,0))
- 7490 CE=FNF(MOUSE(7,0))*FNG(MOUSE(8,0))
- 7500 CC=(CC=CE)*CC*-1
- 7510 CA=CA*(CC=0)*-1+(CC<>0)
- 7520 ON (EA=3)*-1 GOTO 7540
- 7530 RETURN 7230
- 7540 RETURN
- 7550 '----------------------------------------------------------------
- 7560 CC=FNH(MOUSE(4,0))*FNG(MOUSE(5,0))
- 7570 CE=FNH(MOUSE(7,0))*FNG(MOUSE(8,0))
- 7580 CC=(CC=CE)*CC*-1
- 7590 RETURN
- 7600 '----------------------------------------------------------------
- 7610 CC=FNI(MOUSE(4,0))*FNG(MOUSE(5,0))
- 7620 CE=FNI(MOUSE(7,0))*FNG(MOUSE(8,0))
- 7630 CC=(CC=CE)*CC*-1
- 7640 RETURN
- 7650 '----------------------------------------------------------------
- 7660 CC=FNJ(MOUSE(4,0))*FNG(MOUSE(5,0))
- 7670 CE=FNJ(MOUSE(7,0))*FNG(MOUSE(8,0))
- 7680 CC=(CC=CE)*CC*-1
- 7690 RETURN
- 7700 '--------------------------------------------------------------------
- 7710 *P4CK2:ON (PONFRG(4,DAI(2))<=1)*-1 GOTO 5540
- 7720 DA=2:FW=Z:MOUSE(3) ON:C(0)=0 :CA=0:CC=0:EA=2:XTM=X:YTM=Y
- 7730 ON ERROR GOTO 10660
- 7740 PUT@ (241,345)-(340,362),MAS7,PSET,%19
- 7750 LINE (541,345)-(620,360),PSET,%41,BF
- 7760 PUT@ (541,345)-(620,360),MAS4,PSET,%19
- 7770 ON (PONFRG(4,DAI(2))=2)*-1 GOTO 7820
- 7780 LINE (351,345)-(435,360),PSET,%41,BF
- 7790 PUT@ (351,345)-(435,360),MAS2,PSET,%19
- 7800 LINE (446,345)-(530,360),PSET,%41,BF
- 7810 PUT@ (446,345)-(530,360),MAS3,PSET,%19:GOTO 7850
- 7820 LINE (446,345)-(530,360),PSET,%41,BF
- 7830 PUT@ (446,345)-(530,360),MAS2,PSET,%19
- 7840 '----------------------------------------------------------------
- 7850 ON (CC=0)*-1 GOTO 7850
- 7860 MOUSE(3) OFF:DA=0
- 7870 ON CC GOTO 7880,7900,7910
- 7880 ON (PONFRG(4,DAI(2))=3)+1 GOTO 7850
- 7890 EB=2:GOTO 7940
- 7900 EB=((PONFRG(4,DAI(2))=3)*3+(PONFRG(4,DAI(2))=2)*2)*-1:GOTO 7940
- 7910 LINE (241,345)-(620,362),PSET,%40,BF
- 7920 X=XTM:Y=YTM:GOTO 5540
- 7930 '----------------------------------------------------------------
- 7940 LINE (241,345)-(620,362),PSET,%40,BF:EA=3 :EC=EB:MOUSE(4) OFF
- 7950 ON (EB=FUDA(4))+1 GOTO 7970
- 7960 MOUSE(4) ON :ON ERROR GOTO 10660 :GOTO 5840
- 7970 OUTM #255,&H9D,60,0
- 7980 OUTM #255,&HBD,&H0A,&H40:OUTM #255,&HBD,&H07,&H7F
- 7990 ON EB-1 GOTO 8000,8020
- 8000 PUT@ (241,345)-(492,364),MAS8,PSET,%19
- 8010 OUTM #255,&HCD,&H00:OUTM #255,&H9D,60,127:GOTO 8040
- 8020 PUT@ (241,345)-(493,366),MAS9,PSET,%19
- 8030 OUTM #255,&HCD,&H01:OUTM #255,&H9D,60,127
- 8040 LINE (241,0)-(244,480),PSET,%40,BF
- 8050 LINE (241,FNA(4)+30)-(244,FNA(4)+90),PSET,%61,BF
- 8060 LINE (541,345)-(623,360),PSET,%41,BF
- 8070 PUT@ (541,345)-(623,360),KYAN,PSET,%19
- 8080 GET@A (30,250)-(130,360),TEMPTIF2
- 8090 DAITMP=DAI(1)
- 8100 DA=3:FQ=FUDA(4)
- 8110 FOR FR=1 TO FUDA(4)
- 8120 DAT(5,FR,0)=DAT(4,FR,0):DAT(5,FR,1)=DAT(4,FR,1)
- 8130 NEXT
- 8140 WHILE EC>0
- 8150 MOUSE(3) ON
- 8160 ON ERROR GOTO 10660
- 8170 ON (CA=0)*-1 GOTO 8170
- 8180 MOUSE(3) OFF
- 8190 ON (CA<>-1)*-1 GOTO 8210
- 8200 EC=0:GOTO 8250
- 8210 CK=(DAI(2)=DAT(4,CA,1))
- 8220 ON (CK=0)*-1 GOTO 8150
- 8230 C(0)=CA:CK=0:CA=0
- 8240 Z=4:MOUSE(3) OFF:GOSUB 4870:MOUSE(3) ON:EC=EC-1
- 8250 ON ERROR GOTO 10660 : WEND
- 8260 ON (CA=-1)*-1 GOTO 8340
- 8270 LINE (241,345)-(640,366),PSET,%40,BF:MOUSE(3) OFF
- 8280 G=0
- 8290 ON ((DAI(2)=2)+(DAI(2)=8)+(DAI(1)=5)=0)*-1 GOTO 8310
- 8300 D=EB+1
- 8310 S!=-1*(D=1):GOSUB *WAIT:AI=1:DA=0:MOUSE(4) ON : ON ERROR GOTO 10660
- 8320 GOTO *HANTEI
- 8330 '-----------------------------------------------------------------
- 8340 FOR FR=1 TO FQ
- 8350 DAT(4,FR,0)=DAT(5,FR,0):DAT(4,FR,1)=DAT(5,FR,1)
- 8360 NEXT
- 8370 Z=FW:FUDA(4)=FQ
- 8380 LINE (241,345)-(640,368),PSET,%40,BF:MOUSE(4) ON
- 8390 LINE (241,0)-(244,480),PSET,%40,BF
- 8400 LINE (241,FNA(Z)+30)-(244,FNA(Z)+90),PSET,%61,BF
- 8410 PUT@A (30,250)-(130,360),TEMPTIF2
- 8420 DAI(1)=DAITMP
- 8430 IL=1:GOSUB *FRG:IL=0:X=XTM:Y=YTM:GOTO *P4CK2
- 8440 '--------------------------------------------------------------------
- 8450 *P4CK3
- 8460 ON (QS=0)*-1 GOTO 5460
- 8470 MOUSE(3) ON:ON ERROR GOTO 10660:C(0)=0:CA=0:CC=0:EA=5:DA=4
- 8480 PUT@ (241,345)-(340,362),MAS7,PSET,%19
- 8490 LINE (541,345)-(620,360),PSET,%41,BF
- 8500 PUT@ (541,345)-(620,360),MAS4,PSET,%19
- 8510 LINE (446,345)-(530,360),PSET,%41,BF
- 8520 PUT@ (446,345)-(530,360),MAS1,PSET,%19
- 8530 ON (CC=0)*-1 GOTO 8530
- 8540 LINE (241,345)-(620,362),PSET,%40,BF:MOUSE(3) OFF:DA=0
- 8550 ON (CC=2)*-1 GOTO 5460
- 8560 ON AI GOTO 5840,9250
- 8570 '--------------------------------------------------------------------
- 8580 *P4CK4
- 8590 MOUSE(3) ON:ON ERROR GOTO 10660:C(0)=0:CA=0:CC=0:EA=4:DA=5
- 8600 PUT@ (241,345)-(354,360),MAS10,PSET,%19
- 8610 LINE (380,345)-(430,360),PSET,%31,BF
- 8620 LINE (380,345)-(430,360),PSET,%21,B
- 8630 LINE (440,345)-(490,360),PSET,%32,BF
- 8640 LINE (440,345)-(490,360),PSET,%22,B
- 8650 LINE (500,345)-(550,360),PSET,%33,BF
- 8660 LINE (500,345)-(550,360),PSET,%23,B
- 8670 LINE (560,345)-(610,360),PSET,%34,BF
- 8680 LINE (560,345)-(610,360),PSET,%24,B
- 8690 ON (CC=0)*-1 GOTO 8690
- 8700 LINE (241,345)-(620,362),PSET,%40,BF:MOUSE(3) OFF
- 8710 W=CC:DA=0:GOTO 7040
- 8720 '--------------------------------------------------------------------
- 8730 *ENDCK1
- 8740 STOP OFF:MOUSE(4) OFF
- 8750 LINE (241,345)-(620,366),PSET,%40,BF
- 8760 MOUSE(3) ON: CA=0:CC=0:EA=5
- 8770 PUT@ (241,345)-(386,364),MAS11,PSET,%19
- 8780 LINE (541,345)-(620,360),PSET,%41,BF
- 8790 PUT@ (549,343)-(613,360),MAS12,PSET,%19
- 8800 LINE (446,345)-(530,360),PSET,%41,BF
- 8810 PUT@ (456,343)-(520,360),MAS13,PSET,%19
- 8820 ON (CC=0)*-1 GOTO 8820
- 8830 LINE (241,345)-(620,366),PSET,%40,BF
- 8840 MOUSE(3) OFF:MOUSE(4) ON
- 8850 ON ERROR GOTO 10660
- 8860 ON (CC=2)+1 GOTO 8900
- 8870 MOUSE(1) OFF:MOUSE(2) OFF:MOUSE(3) OFF:MOUSE(4) OFF:MOUSE(5) OFF
- 8880 MOUSE 5:KPL=0:FDV=1:PLAY OFF:LINE (0,0)-(1023,511),PSET,%40,BF:FRG=0
- 8890 S!=2:GOSUB *WAIT :RETURN 640
- 8900 ON DA GOTO 8920,8930,8940,8950,8960
- 8910 RETURN
- 8920 RETURN *CHOICE
- 8930 RETURN 7710
- 8940 RETURN 7940
- 8950 RETURN 8450
- 8960 RETURN 8580
- 8970 '--------------------------------------------------------------------
- 8980 *ENDCK2
- 8990 STOP OFF:MOUSE(4) OFF
- 9000 CHKPLAY=1 : LINE (241,345)-(620,366),PSET,%40,BF
- 9010 MOUSE(3) ON: CA=0:CC=0:EA=5
- 9020 LINE (81,485)-(620,506),PSET,%40,BF
- 9030 SYMBOL(81,485),"ちょっと負けが込んできましたが、続けますか?",1,1,%19,0,PSET,1
- 9040 GET@A (81,485)-(620,506),TEMPTIF
- 9050 PUT@A (81,345)-(620,366),TEMPTIF
- 9060 LINE (541,345)-(620,360),PSET,%41,BF
- 9070 PUT@ (549,343)-(613,360),MAS12,PSET,%19
- 9080 LINE (446,345)-(530,360),PSET,%41,BF
- 9090 PUT@ (456,343)-(520,360),MAS13,PSET,%19
- 9100 ON (CC=0)*-1 GOTO 9100
- 9110 LINE (81,345)-(620,366),PSET,%40,BF
- 9120 MOUSE(3) OFF:MOUSE(4) ON
- 9130 ON ERROR GOTO 10660
- 9140 ON (CC=2)+1 GOTO 9200
- 9150 '------------------
- 9160 MOUSE(1) OFF:MOUSE(2) OFF:MOUSE(3) OFF:MOUSE(4) OFF:MOUSE(5) OFF
- 9170 MOUSE 5:KPL=0:FDV=1:PLAY OFF:LINE (0,0)-(1023,511),PSET,%40,BF:FRG=0
- 9180 RETURN *EN
- 9190 '------------------
- 9200 RETURN
- 9210 '--------------------------------------------------------------------
- 9220 *IPPATHU
- 9230 S!=2:GOSUB *WAIT
- 9240 QS=1:ON (J=4)*-1 GOTO *P4CK3
- 9250 P=J:LINE (640,15)-(640,105),PSET,%40,BF
- 9260 FOR K=1 TO FUDA(P):C=1:E=1:GOSUB *PRINTING :NEXT
- 9270 GET@A (640,15)-(1023,105),TEMPTIF
- 9280 PUT@A (250,FNA(P)+15)-(633,FNA(P)+105),TEMPTIF
- 9290 OUTM #255,&H9D,60,0:OUTM #255,&HBD,&H0A,&H40:OUTM #255,&HBD,&H07,&H7F
- 9300 PUT@ (270,30+FNA(P))-(610,89+FNA(P)),IPPATHU,PSET,%64
- 9310 OUTM #255,&HCD,&H02:OUTM #255,&H9D,60,127:OUTM #255,&HCB,30
- 9320 S!=4:GOSUB *WAIT
- 9330 FOR P=1 TO 4
- 9340 ON (P=J)*-1 GOTO 9420
- 9350 LINE (640,15)-(1023,105),PSET,%40,BF:E=1
- 9360 PTSTEMP&(P)=PTSTEMP&(P)*2^L
- 9370 PTS&(J)=PTS&(J)+FNC&(PTSTEMP&(P)):PTS&(P)=PTS&(P)-FNC&(PTSTEMP&(P))
- 9380 FOR K=1 TO FUDA(P):C=1:GOSUB *PRINTING :NEXT
- 9390 GET@A (640,15)-(1023,105),TEMPTIF
- 9400 PUT@A (250,FNA(P)+15)-(633,FNA(P)+105),TEMPTIF
- 9410 X=270:GOSUB *PTSPRIN
- 9420 NEXT
- 9430 S!=20:GOSUB *WAIT
- 9440 AGA=J:GOTO *SETUP2
- 9450 '--------------------------------------------------------------------
- 9460 *USERSET
- 9470 FRG=0:ON MOUSE(3) GOSUB *USER1 :MOUSE(3) ON:ON ERROR GOTO 10660
- 9480 PUT@ (0,115)-(639,178),TITLE2,PSET,%72
- 9490 PUT@A (240,120)-(406,185),TITLE0
- 9500 FOR X=4 TO 9:PUT@A (0,59*(X-1))-(639,59*X),TITLE0:NEXT
- 9510 PUT@ (241,140)-(405,177),SET02,PSET,%72
- 9520 PUT@ (86,211)-(255,247),SET14,PSET,%73
- 9530 PUT@ (81,261)-(129,286),SET03,PSET,%74
- 9540 PUT@ (78,301)-(131,329),SET04,PSET,%75
- 9550 PUT@ (78,341)-(131,364),SET05,PSET,%75
- 9560 PUT@ (79,381)-(131,406),SET06,PSET,%75
- 9570 PUT@ (171,261)-(268,285),SET07,PSET,%76
- 9580 PUT@ (170,301)-(270,326),SET08,PSET,%76
- 9590 PUT@ (171,341)-(266,365),SET18,PSET,%76
- 9600 PUT@ (435,211)-(505,246),SET13,PSET,%73
- 9610 PUT@ (443,261)-(491,286),SET03,PSET,%77
- 9620 PUT@ (351,301)-(583,326),SET09,PSET,%77
- 9630 PUT@ (351,341)-(583,366),SET10,PSET,%77
- 9640 PUT@ (338,381)-(595,405),SET11,PSET,%77
- 9650 PUT@ (128,430)-(336,456),SET12,PSET,%73
- 9660 PUT@ (373,430)-(421,455),SET03,PSET,%78
- 9670 PUT@ (453,430)-(500,455),SET15,PSET,%78
- 9680 LINE (495,145)-(605,180),PSET,%43,BF
- 9690 PUT@ (501,150)-(597,176),SET16,PSET,%79
- 9700 LINE (75,215+40*(USER(0)+1))-(135,250+40*(USER(0)+1)),PSET,%80,B
- 9710 LINE (330,215+40*USER(2)/21)-(600,250+40*USER(2)/21),PSET,%80,B
- 9720 ON (USER(0)=0)*-1 GOTO 9760
- 9730 RB=(USER(1)=-5)+(USER(1)=-3)*2+(USER(1)=0)*3
- 9740 LINE (165,215-40*RB)-(275,250-40*RB),PSET,%80,B
- 9750 LINE (288+USER(3)*80,425)-(345+USER(3)*80,460),PSET,%80,B
- 9760 ON (RA+RC+RE=0)*-1 GOTO 9760
- 9770 ON (RC<>0)*-1 GOTO 9840
- 9780 ON (RE<>0)*-1 GOTO 9900
- 9790 ON (RA>=21)*-1 GOTO 9960
- 9800 ON (RA>=5)*-1 GOTO 10010
- 9810 ON (RA=0)*-1 GOTO 9760
- 9820 GOTO 10130
- 9830 '------------------------------------------------------------
- 9840 PUT@A (240,120)-(406,185),TITLE0
- 9850 FOR X=3 TO 9:PUT@A (0,59*(X-1))-(639,59*X),TITLE0:NEXT
- 9860 PUT@ (0,115)-(639,178),TITLE2,PSET,%53
- 9870 PUT@ (0,440)-(639,460),TITLE5,PSET,%54
- 9880 RA=0:RC=0:RE=0:GOTO *SETUP1
- 9890 '-----------------------------------------------------------
- 9900 ON (USER(3)=RE)*-1 GOTO 9760
- 9910 ON (USER(0)<2)*-1 GOTO 9760
- 9920 LINE (288+USER(3)*80,425)-(345+USER(3)*80,460),PSET,%82,B
- 9930 LINE (288+RE*80,425)-(345+RE*80,460),PSET,%80,B
- 9940 USER(3)=RE:RE=0:GOTO 9760
- 9950 '----------------------------------------------------------
- 9960 ON (USER(2)=RA)*-1 GOTO 9760
- 9970 LINE (330,215+40*USER(2)/21)-(600,250+40*USER(2)/21),PSET,%82,B
- 9980 LINE (330,215+40*RA/21)-(600,250+40*RA/21),PSET,%80,B
- 9990 USER(2)=RA:RA=0:GOTO 9760
- 10000 '---------------------------------------------------------
- 10010 ON (RA=20)*-1 GOTO 9760
- 10020 ON (USER(1)=0)*(RA=15) GOTO 9760
- 10030 ON (USER(1)=3)*(RA=10) GOTO 9760
- 10040 ON (USER(1)=5)*(RA=5) GOTO 9760
- 10050 ON (USER(0)=0)*-1 GOTO 9760
- 10060 RB=(3*(RA=5)+2*(RA=10)+(RA=15))*-1
- 10070 LINE (165,255)-(275,290),PSET,%82,B
- 10080 LINE (165,295)-(275,330),PSET,%82,B
- 10090 LINE (165,335)-(275,370),PSET,%82,B
- 10100 LINE (165,215+40*RA/5)-(275,250+40*RA/5),PSET,%80,B
- 10110 USER(1)=(RA=5)*5+(RA=10)*3:RA=0:GOTO 9760
- 10120 '--------------------------------------------------------
- 10130 ON (USER(0)=RA-1)*-1 GOTO 9760
- 10140 LINE (75,215+40*(USER(0)+1))-(135,250+40*(USER(0)+1)),PSET,%82,B
- 10150 LINE (75,215+40*RA)-(135,250+40*RA),PSET,%80,B
- 10160 USER(0)=RA-1:RA=0
- 10170 ON (USER(0)=0)+1 GOTO 10200
- 10180 RB=(USER(1)=-5)+(USER(1)=-3)*2+(USER(1)=0)*3
- 10190 LINE (165,215-40*RB)-(275,250-40*RB),PSET,%82,B
- 10200 ON (USER(0)<2)+1 GOTO 10220
- 10210 LINE (288+USER(3)*80,425)-(345+USER(3)*80,460),PSET,%82,B
- 10220 ON (USER(0)>0)+1 GOTO 10250
- 10230 RB=(USER(1)=-5)+(USER(1)=-3)*2+(USER(1)=0)*3
- 10240 LINE (165,215-40*RB)-(275,250-40*RB),PSET,%80,B
- 10250 ON (USER(0)>1)+1 GOTO 10270
- 10260 LINE (288+USER(3)*80,425)-(345+USER(3)*80,460),PSET,%80,B
- 10270 GOTO 9760
- 10280 '----------------------------------------------------------------
- 10290 *USER1:MOUSE(3) STOP : ON ERROR GOTO 10660
- 10300 F0=MOUSE(4,0):F1=MOUSE(5,0):F3=MOUSE(7,0):F4=MOUSE(8,0)
- 10310 RA=FNL(F0)*FNM(F1):RB=FNL(F3)*FNM(F4):RA=RA*(RA=RB)*-1
- 10320 RC=FNN(F0,F1):RD=FNN(F3,F4):RC=RC*(RC=RD)*-1
- 10330 RE=FNO(F0,F1):RF=FNO(F3,F4):RE=RE*(RE=RF)*-1
- 10340 MOUSE(3) ON:ON ERROR GOTO 10660:RETURN
- 10350 '--------------------------------------------------------------------
- 10360 *NAGACK
- 10370 NAGA(0,0)=0:NAGA(0,1)=0:FOR NE=1 TO 4
- 10380 NAGA(NE,1)=PONFRG(NE,2)+PONFRG(NE,8)+PONFRG(NE,14)
- 10390 NAGA(NE,2)=PONFRG(NE,14)
- 10400 NAGA(NE,3)=PONFRG(NE,2)+PONFRG(NE,8)+PONFRG(NE,11)+PONFRG(NE,14)
- 10410 ON USER(2)\21 GOTO 10460,10420,10430,10440
- 10420 NF=(NAGA(NE,1)>=3)*-1:GOTO 10450
- 10430 NF=(NAGA(NE,1)>=4)*-1:GOTO 10450
- 10440 NF=(NAGA(NE,3)>=4)*-1:GOTO 10450
- 10450 ON (NF=1)*-1 GOTO 10550
- 10460 ON USER(3) GOTO 10480,10470
- 10470 ON (NAGA(NE,2)>=2)*-1 GOTO 10550
- 10480 NEXT
- 10490 NAGA(0,1)=NAGA(0,1)+NAGA(0,0)
- 10500 ON (NAGA(0,1)>0)*-1 GOTO 10520
- 10510 GOTO 2680
- 10520 S!=20:GOSUB *WAIT:AGA=Z: GOTO *SETUP2
- 10530 '-----------------------------------------------------------------
- 10540 S!=5:GOSUB *WAIT
- 10550 NAGA(0,0)=1:LINE (640,15)-(1023,105),PSET,%40,BF
- 10560 P=NE:FOR K=1 TO FUDA(NE):E=1:C=1:GOSUB *PRINTING :NEXT
- 10570 GET@A (640,15)-(1023,105),TEMPTIF
- 10580 PUT@A (250,FNA(P)+15)-(633,FNA(P)+105),TEMPTIF
- 10590 PUT@ (270,37+FNA(NE))-(442,88+FNA(NE)),NAGARE,PSET,%66
- 10600 GOTO 10480
- 10610 '--------------------------------------------------------------------
- 10620 *EN
- 10630 OUT &H5EC,VAL(QPL$)
- 10640 END
- 10650 '--------------------------------------------------------------------
- 10660 *ERRORTRAP
- 10670 ON (ERL=6290)*-1 GOTO 11220
- 10680 MOUSE 5 :KPL=0 : BEEP 1 : PLAY OFF
- 10690 ON ((ERR= 7)+(ERR=82)+(ERR=83)+(ERR=89))*-1 GOTO 10820
- 10700 ON ((ERR=60)+(ERR=72)+(ERR=75)+(ERR=53))*-1 GOTO 10880
- 10710 ON (ERR=63)*-1 GOTO 10940
- 10720 ON (ERL=340)*-1 GOTO 11000
- 10730 ON (ERL=190)*-1 GOTO 10820
- 10740 ON (ERR=99)*-1 GOTO 11000
- 10750 '--------------------------------------------------------------------
- 10760 ERRMAS1$=" ごめんなさい! "
- 10770 ERRMAS2$="予期せぬバグが発生してしまいました。"
- 10780 ERRMAS3$=" お手数ですが、状況と以下のデータを "
- 10790 ERRMAS4$=" 作者まで連絡してください。 "
- 10800 ERRMAS5$=" ゴメンナサイ (^^;) "
- 10810 GOTO 11060
- 10820 ERRMAS1$=" CAUTION! "
- 10830 ERRMAS2$=" メモリが足りないようです。 "
- 10840 ERRMAS3$=" RAMディスクを解除するか "
- 10850 ERRMAS4$=" サイドワークを外してから "
- 10860 ERRMAS5$=" もう一度立ち上げてください。 "
- 10870 GOTO 11060
- 10880 ERRMAS1$=" CAUTION! "
- 10890 ERRMAS2$="途中でディスクを抜きませんでしたか?"
- 10900 ERRMAS3$=" ディスクは壊れていませんか? "
- 10910 ERRMAS4$=" ちゃんとディスクは入っていますか? "
- 10920 ERRMAS5$="確認してから再度立ち上げてください。"
- 10930 GOTO 11060
- 10940 ERRMAS1$=" CAUTION! "
- 10950 ERRMAS2$=" ファイルが見つかりません。 "
- 10960 ERRMAS3$="途中でディスクを抜きませんでしたか?"
- 10970 ERRMAS4$=" ファイルは全部そろっていますか? "
- 10980 ERRMAS5$="確認してから再度立ち上げてください。"
- 10990 GOTO 11060
- 11000 ERRMAS1$=" WARNING! "
- 11010 ERRMAS2$=" NIPPATHI.CFG の内容が不正です。 "
- 11020 ERRMAS3$=" "
- 11030 ERRMAS4$=" 申し訳ありませんが、 "
- 11040 ERRMAS5$="不正部分には内部規定値を使用します。"
- 11050 '-----------------------------------------------------------
- 11060 LINE (140,120)-(520,400),PSET,%255+(ERL<240)*240,BF
- 11070 LINE (140,120)-(520,400),PSET,%19+(ERL<240)*19,B
- 11080 SYMBOL (190,150),ERRMAS1$,1,1,%64+(ERL<240)*54,,,1
- 11090 SYMBOL (190,190),ERRMAS2$,1,1,%19+(ERL<240)*19,,,1
- 11100 SYMBOL (190,213),ERRMAS3$,1,1,%19+(ERL<240)*19,,,1
- 11110 SYMBOL (190,236),ERRMAS4$,1,1,%19+(ERL<240)*19,,,1
- 11120 SYMBOL (190,259),ERRMAS5$,1,1,%19+(ERL<240)*19,,,1
- 11130 'ON (ERR=99)*-1 GOTO 11170
- 11140 SYMBOL (300,300),"ERR ="+STR$(ERR),1,1,%64+(ERL<240)*54
- 11150 SYMBOL (300,320),"ERL ="+STR$(ERL),1,1,%64+(ERL<240)*54
- 11160 SYMBOL (300,340),"VER = "+VER$,1,1,%64+(ERL<240)*54
- 11170 SYMBOL (230,370),"リターンキーを押してください",1,1,%19+(ERL<240)*19,,,1
- 11180 ON (INKEY$<>CHR$(&HD))*-1 GOTO 11180
- 11190 ON (ERR=99)*-1 GOTO 11240
- 11200 BEEP 0 : OUT &H5EC,VAL(QPL$) : END
- 11210 '-----------------------------------------------------------
- 11220 RESUME 6300
- 11230 '-----------
- 11240 BEEP 0 : CLS : RESUME 550
- 11250 '--------------------------------------------------------------------
- 11260 ' September 27, 1994
- 11270 ' Hoshitora.
-